package gfiber

import "github.com/gofiber/fiber/v2"

func GroupTest(app *fiber.App) {
	// Match request starting with /api
	app.Use("/api", func(c *fiber.Ctx) error {
		return c.Next()
	})

	api := app.Group("/api") // /api

	v1 := api.Group("/v1")   // /api/v1
	v1.Get("/list", handler) // /api/v1/list
	v1.Put("/user", handler) // /api/v1/user
	v1.Post("/post", handler)
	v1.Delete("/del", handler)

	v2 := api.Group("/v2")    // /api/v2
	v2.Get("/list", handler2) // /api/v2/list
	v2.Put("/user", handler2) // /api/v2/user
	v2.Post("/post", handler)
	v2.Delete("/del", handler)
}

// 自定义处理器1
func handler(c *fiber.Ctx) error {
	return c.SendString("I'm a POST request!")
}

// 自定义处理器2
func handler2(c *fiber.Ctx) error {
	return c.SendString("I'm handler 2")
}
